package com.etone.smartAudit.service;

import com.alibaba.fastjson.JSON;
import com.etone.smartAudit.dto.egcc.MsgDTO;
import com.etone.smartAudit.vo.email.EmailContent;
import org.springframework.stereotype.Service;

/***
 * 邮件格式化内容
 */
@Service
public class EmailContentFormat {

    /***
     * 获取邮件内容
     * @param dto
     * @return
     */
    public EmailContent getEmailContent(MsgDTO dto) {
//        0- 执行人信息  1-抄送信息  2-反馈信息
        Integer msgType = dto.getMsgType() == null ? 0 : dto.getMsgType();
        Integer type = dto.getType() == null ? 0 : dto.getType();
        EmailContent email = new EmailContent();
        if (msgType == 0) {
            String title = type == 1 ? "2021年公司网格化运营管理审计调查项目资料需求" : "2021年公司网格化运营管理审计调查项目事项确认单";
            String content = type == 1 ? "各位领导、同事：\n" +
                    "    您好！%s项目的资料需求已下发，请登录%s，并按要求尽快组织相关部门人员进行回复和反馈，如对资料需求有疑问，请直接联系审计组成员。验证码为%s。\n" +
                    "\n" +
                    "2021年公司网格化运营管理审计调查项目组" : "各位领导、同事：\n" +
                    "    您好！%s项目的事项确认单已下发，请登录%s，并按要求尽快组织相关部门人员进行回复和反馈，若审计事项描述内容与客观事实存在差异，请第一时间与审计组进行沟通，并按要求提供全部支撑材料。验证码为%s。\n" +
                    "\n" +
                    "2021年公司网格化运营管理审计调查项目组";

            content = String.format(content, dto.getItemName(), dto.getUrl(), dto.getCode());
            email.setTitle(title);
            email.setContent(content);
        } else if (msgType == 1) {
            String title = type == 1 ? "2021年公司网格化运营管理审计调查项目资料需求" : "2021年公司网格化运营管理审计调查项目事项确认单";
            String content = type == 1 ? "各位领导、同事：\n" +
                    "    您好！您的同事正在处理%s项目的资料需求，您可登录%s，进行查阅和督办，如对资料需求有疑问，请直接联系审计组成员。验证码为%s。\n" +
                    "\n" +
                    "2021年公司网格化运营管理审计调查项目组" : "各位领导、同事：\n" +
                    "    您好！您的同事正在处理%s项目的事项确认单，您可登录%s，进行查阅和督办，若审计事项描述内容与客观事实存在差异，请第一时间与审计组进行沟通，并按要求提供全部支撑材料。验证码为%s。\n" +
                    "\n" +
                    "2021年公司网格化运营管理审计调查项目组";
            content = String.format(content, dto.getItemName(), dto.getUrl(), dto.getCode());
            email.setTitle(title);
            email.setContent(content);
        } else if (msgType == 2) {
            String title = type == 1 ? "2021年公司网格化运营管理审计调查项目事项需求单" : "2021年公司网格化运营管理审计调查项目事项确认单";
            String content = type == 1 ? "各位领导、同事：\n" +
                    "       您好！%s项目的事项需求单有人对您进行了意见反馈，请登录%s 进行检阅。验证码为%s。\n" +
                    "\n" +
                    "2021年公司网格化运营管理审计调查项目组" : "各位领导、同事：\n" +
                    "       您好！%s项目的事项确认单有人对您进行了意见反馈，请登录%s 进行检阅。验证码为%s。\n" +
                    "\n" +
                    "2021年公司网格化运营管理审计调查项目组";
            content = String.format(content, dto.getItemName(), dto.getUrl(), dto.getCode());
            email.setTitle(title);
            email.setContent(content);
        }
        return email;
    }

    public static void main(String[] args) {
        EmailContentFormat format = new EmailContentFormat();
        MsgDTO dto = new MsgDTO();
        dto.setItemName("测试项目");
        dto.setUrl("http://www.jiayen.cn");
        dto.setCode("csgg");
        for (int i = 1; i < 3; i++) {
            for (int j = 0; j < 3; j++) {
                dto.setType(i);
                dto.setMsgType(j);
                EmailContent content = format.getEmailContent(dto);
                System.out.println(JSON.toJSONString(content));
            }
        }

    }
}
